package com.ruoyi.yipaiju.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 爬虫房源列对象 fo_spider_house
 * 
 * @author liuwp
 * @date 2023-06-23
 */
public class SpiderHouse extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 房源编码 */
    @Excel(name = "房源编码")
    private String houseCode;

    /** 省 */
    @Excel(name = "省")
    private String province;

    /** 城市 */
    @Excel(name = "城市")
    private String city;

    /** 区 */
    @Excel(name = "区")
    private String district;

    /** 详情地址 */
    @Excel(name = "详情地址")
    private String auctionUrl;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 房源类型 */
    @Excel(name = "房源类型")
    private String houseType;

    /** name_md5 */
    @Excel(name = "name_md5")
    private String nameMd5;

    /** 服务器IP */
    @Excel(name = "服务器IP")
    private String serverIp;

    @Excel(name = "是否需要抓取", dictType = "fo_spider_house_grab_status")
    private Integer grabStatus;

    private Integer grabCount;
    // 加1使用
    private Integer grabCount1;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date queueTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date finishTime;

    private String lockUuid;

    private String pageNum;

    /** ext1 */
    @Excel(name = "ext1")
    private String ext1;

    /** ext2 */
    @Excel(name = "ext2")
    private String ext2;

    /** ext3 */
    @Excel(name = "ext3")
    private String ext3;

    private String origin;
    private Long assessmentPrice;
    private Long currentPrice;
    private BigDecimal discountRate;
    private Long ensurePrice;
    private Long marketPrice;
    private Long minPrice;
    private String address;
    private String court;
    private String title;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    private Integer limit;

    public String getOrigin() {
        return origin;
    }

    public void setOrigin(String origin) {
        this.origin = origin;
    }

    public Long getAssessmentPrice() {
        return assessmentPrice;
    }

    public void setAssessmentPrice(Long assessmentPrice) {
        this.assessmentPrice = assessmentPrice;
    }

    public Long getCurrentPrice() {
        return currentPrice;
    }

    public void setCurrentPrice(Long currentPrice) {
        this.currentPrice = currentPrice;
    }

    public BigDecimal getDiscountRate() {
        return discountRate;
    }

    public void setDiscountRate(BigDecimal discountRate) {
        this.discountRate = discountRate;
    }

    public Long getEnsurePrice() {
        return ensurePrice;
    }

    public void setEnsurePrice(Long ensurePrice) {
        this.ensurePrice = ensurePrice;
    }

    public Long getMarketPrice() {
        return marketPrice;
    }

    public void setMarketPrice(Long marketPrice) {
        this.marketPrice = marketPrice;
    }

    public Long getMinPrice() {
        return minPrice;
    }

    public void setMinPrice(Long minPrice) {
        this.minPrice = minPrice;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getCourt() {
        return court;
    }

    public void setCourt(String court) {
        this.court = court;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public String getPageNum() {
        return pageNum;
    }

    public void setPageNum(String pageNum) {
        this.pageNum = pageNum;
    }

    public Integer getGrabCount1() {
        return grabCount1;
    }

    public void setGrabCount1(Integer grabCount1) {
        this.grabCount1 = grabCount1;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public String getLockUuid() {
        return lockUuid;
    }

    public void setLockUuid(String lockUuid) {
        this.lockUuid = lockUuid;
    }

    public Integer getGrabStatus() {
        return grabStatus;
    }

    public void setGrabStatus(Integer grabStatus) {
        this.grabStatus = grabStatus;
    }

    public Integer getGrabCount() {
        return grabCount;
    }

    public void setGrabCount(Integer grabCount) {
        this.grabCount = grabCount;
    }

    public Date getQueueTime() {
        return queueTime;
    }

    public void setQueueTime(Date queueTime) {
        this.queueTime = queueTime;
    }

    public Date getFinishTime() {
        return finishTime;
    }

    public void setFinishTime(Date finishTime) {
        this.finishTime = finishTime;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setHouseCode(String houseCode) 
    {
        this.houseCode = houseCode;
    }

    public String getHouseCode() 
    {
        return houseCode;
    }
    public void setProvince(String province) 
    {
        this.province = province;
    }

    public String getProvince() 
    {
        return province;
    }
    public void setCity(String city) 
    {
        this.city = city;
    }

    public String getCity() 
    {
        return city;
    }
    public void setDistrict(String district) 
    {
        this.district = district;
    }

    public String getDistrict() 
    {
        return district;
    }
    public void setAuctionUrl(String auctionUrl) 
    {
        this.auctionUrl = auctionUrl;
    }

    public String getAuctionUrl() 
    {
        return auctionUrl;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setHouseType(String houseType) 
    {
        this.houseType = houseType;
    }

    public String getHouseType() 
    {
        return houseType;
    }
    public void setNameMd5(String nameMd5) 
    {
        this.nameMd5 = nameMd5;
    }

    public String getNameMd5() 
    {
        return nameMd5;
    }
    public void setServerIp(String serverIp) 
    {
        this.serverIp = serverIp;
    }

    public String getServerIp() 
    {
        return serverIp;
    }
    public void setExt1(String ext1)
    {
        this.ext1 = ext1;
    }

    public String getExt1() 
    {
        return ext1;
    }
    public void setExt2(String ext2) 
    {
        this.ext2 = ext2;
    }

    public String getExt2() 
    {
        return ext2;
    }
    public void setExt3(String ext3) 
    {
        this.ext3 = ext3;
    }

    public String getExt3() 
    {
        return ext3;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("houseCode", getHouseCode())
            .append("province", getProvince())
            .append("city", getCity())
            .append("district", getDistrict())
            .append("auctionUrl", getAuctionUrl())
            .append("status", getStatus())
            .append("houseType", getHouseType())
            .append("nameMd5", getNameMd5())
            .append("serverIp", getServerIp())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("ext1", getExt1())
            .append("ext2", getExt2())
            .append("ext3", getExt3())
            .toString();
    }
}
